Home terminal apparatus and communication system

ABSTRACT

An internet terminal ( 110 ) according to the present invention is comprised of: a communication unit ( 111 ) that sends a local packet generated by a packet generation unit ( 113 ) and receives a response local packet from a server apparatus ( 200 ); an encryption processing unit ( 112 ) that encrypts the local packet to be sent out and decrypts the received response local packet; the packet generation unit ( 113 ) that generates the local packet; a polling information storage unit ( 114 ) that holds a terminal ID and a password used for identifying the internet terminal ( 110 ); a polling interval adjustment unit ( 115 ) that identifies a polling interval at which the local packet is periodically sent to the router ( 101 ); and a control unit ( 116 ) that sends control information to a terminal apparatus to be controlled and controls such terminal apparatus accordingly.

TECHNICAL FIELD

The present invention relates to a home terminal apparatus for sendingand receiving packet data to and from a router connected to an externalnetwork, the home terminal apparatus being connected to the router via ahome network, and a communication system using said home terminalapparatus.

BACKGROUND ART

Recently, access networks such as ADSL (Asymmetric Digital SubscriberLine), optical fiber network and the like which are broadband capable ofhandling a large amount of communication data and which are accessibleat all times have been widespread at an accelerated rate even amongordinary homes. At the same time, many kinds of home networks fororganically connecting home appliances at home with one another areunder standardization. Under these circumstances, it is expected that auser of these home appliances will be able to operate them from anoutside location by remotely operating his/her mobile terminal which canbe connected to the Internet and by transmitting control information tosuch home appliances via the Internet and a home network.

When a connection is made between external and home networks in aconventional method: (i) a plurality of home internet terminals assignedwith local addresses are connected, via a home network, to a routerconnected to an internet network; (ii) the router is connected to theinternet network via an internet service provider (ISP) using acommunication line; and (iii) the internet service provider (ISP)assigns a global address to the router.

When an external server apparatus makes a control request to an internetterminal at home by the use of a global address, the followingconventional methods are used: a router is set to perform static IPmasquerading (e.g. Japanese Laid-Open Patent Application No.2000-341337)and an internet terminal performs polling (e.g. Japanese Laid-OpenPatent Application No.08-204704).

In static IP masquerading, a router, when receiving packet data in whicha specific port number is described as a destination port number,converts the destination address into the local address of an internetterminal, and then routes the packet data to the internet terminal, witha global address and local addresses being registered in a conversiontable as fixed addresses in advance. Therefore, it is possible in staticIP masquerading to commence a session not only from the local side butalso from the global side.

In the method in which an internet terminal performs polling, on theother hand, a router receives, from an internet terminal, a local packetto be sent to a server apparatus, and sends such packet to the serverapparatus after converting the sender's address included in the packetinto the global address of the router and converting the sender's portnumber included in the packet into a port number which can be used bythe router. When this is done, a set of information including the localaddress of the internet terminal, the global address of the router, thesender's port number of the internet terminal, and the sender's portnumber of the router is to be stored in the conversion table for aspecified period of time. Then, when receiving a response global packetthat includes the details of a control intended for the internetterminal from the server apparatus, the router specifies the destinationon the local network by converting the destination address and thedestination port number included in the response global packet into thelocal address of the internet terminal and the destination port numberof the internet terminal with reference to the conversion table, androutes the packet to the internet terminal.

FIG. 13 is a sequence diagram showing the flow of packet data to be sentfor controlling a terminal apparatus at home in accordance with theconventional polling method.

The communication system is comprised of a server apparatus 1301 forsending a remote control request from a user in an outside location to aterminal apparatus at home, a router 1302 for making a conversionbetween global and local addresses and routing packet data betweenexternal and home networks, and an internet terminal 1303 forcontrolling a home appliance and the like according to the controlrequest.

The internet terminal 1303 sends a local packet 1304 to the serverapparatus 1301 in order to check whether there is any control request ornot. When there is a control request from the user of a mobile terminaldevice, the server apparatus 1301 sends, to the internet terminal 1303,a response global packet 1306 as a response in which controlinformation, the terminal ID of a terminal to be controlled, senderinformation, destination information such as the global address of therouter 1302 are attached. Then, the internet terminal 1303 receives aresponse local packet 1307 that includes the control request, and atarget terminal will be controlled accordingly. Note that aconnectionless UDP (User Datagram Protocol) is used as a communicationprotocol.

In a communication using UDP, the router stores a relationship betweenlocal and global addresses for a certain period of time. Therefore, whenthe router 1302 receives the response global packet 1306 that includesthe control information at an interval corresponding to the above periodof time, it is possible to send the response local packet 1307 thatincludes the control request to the internet terminal 1303 by specifyingthe local address of a terminal to be controlled, with reference to acorresponding relationship table.

DISCLOSURE OF INVENTION

However, the use of the static IP masquerade method for the routerrequires an ordinary user to make a technical setting for the routersuch as assigning fixed port numbers used by the router to terminalapparatuses at home. Moreover, although trust and security is aprerequisite for a deal carried out between a service provider and auser when the remote control of home appliances is carried out, since aspecific port number should be disclosed on an internet network, thereare potential risks associated with security (e.g. home appliance ismisoperated) due to a malicious third person who accesses and tampersremote control information, for example.

Meanwhile, when a local packet is sent from an internet terminal to aserver apparatus using a simple polling method, the immediacy of anoperation request to control a home appliance is lost because of thefact that there is a polling interval. To be more specific, as shown inFIG. 13, since a corresponding relationship between local and globaladdresses stored in the router 1302 disappears after a certain period oftime for reasons concerning security and the memory capacity of therouter, the router 1302 cannot make a conversion between such local andglobal addresses and therefore cannot send the control request if theserver apparatus 1301 sends a control request packet 1308 after theabove corresponding relationship disappeared. This necessitates therouter 1302 to wait for an acknowledgement request from the internetterminal 1303, causing a problem that it takes a certain period of timefor a request to reach a home appliance from a mobile terminal device. Aworst-case scenario is that the control information disappears in themiddle of a polling interval. Also, the polling method has anotherproblem that an internet terminal fails to receive a response globalpacket depending on the type of a router or an internet connectionenvironment.

Furthermore, under the present circumstances, an internet serviceprovider dynamically assigns a different global address to a router whenan always-on connection of ADSL and the like is temporarily broken. Forthis reason, even when a user tries to access the internet terminal forcontrol information from its mobile terminal device from outside home, acommunication cannot be established between them because the serverapparatus cannot know a newly assigned global address of the router.

The present invention is intended to solve the above problems whosefirst object is to provide a home terminal apparatus that enables acontrol request which a user sends to a home terminal apparatus such asa home appliance and the like from an outside location, to be sent to aterminal apparatus to be controlled without requiring any waiting time,by the use of an existing router.

The second object is to provide a home terminal apparatus that enablesthe user to remotely control a home terminal apparatus from outside homeusing its mobile terminal device, soon after purchasing the hometerminal apparatus, without needing to make complicated settings to suchhome terminal apparatus and a router.

The third object is to provide a home terminal apparatus that enablesinformation including control information to be transmitted between aserver apparatus, a router, and a home terminal apparatus even in thecase where a new global address is dynamically assigned to the router.

The home terminal apparatus according to the present invention is a hometerminal apparatus for sending/receiving packet data to and from arouter that is connected to an external network to which a serverapparatus is connected, the home terminal apparatus being connected tothe router via a home network, comprising: a packet generation unitoperable to generate packet data to be sent to the server apparatus; ajudgment unit operable to judge a sending interval at which said packetdata is sent; and a communication unit operable to send/receive thepacket data to and from the server apparatus via the router, wherein thecommunication unit sends the packet data periodically and repeatedly tothe router according to the sending interval.

Also, in the home terminal apparatus according to the present invention,the router includes: an assignment unit operable to assign a uniquelocal address to the home terminal apparatus; and a holding unitoperable to hold a corresponding relationship between a global addressassigned to the router and the local address of the home terminalapparatus for a predetermined period of time, and the home terminalapparatus further comprises a detection unit operable to detect saidpredetermined period of time during which the corresponding relationshipis held in the router, wherein the judgment unit judges that the perioddetected by the detection unit or a period shorter than said period isthe sending interval.

Accordingly, even in an environment where the router is connected to aninternet network at all times, it is possible for a control request tocontrol an internet terminal such as a home appliance and the likeplaced inside a house (on the local side) to be sent from a serverapparatus (on the global side). This allows a real time remotecontrolling of the internet terminal by the user.

Moreover, the server apparatus connected to the home terminal apparatusaccording to the present invention further includes: a terminalinformation storage unit operable to store the following informationincluded in the packet data received by the second communication unit asa set of terminal information: the terminal ID of the home terminalapparatus; a global address of the router which is a sender's address;and a global port number of the router which is a sender's port number;and an extraction unit operable to extract, from the terminalinformation storage unit, the global address and the global port numberwhich correspond to the terminal ID, when a control request to controlthe home terminal apparatus with said terminal ID occurs, wherein thesecond packet generation unit generates control packet data thatincludes a control command in accordance with the control request aswell as the global address and the global port number extracted by theextraction unit as a destination address and a destination port number,respectively.

Accordingly, even when a different global address is dynamicallyassigned to the router due to a temporary disconnection of an always-onconnection, it is possible for the server apparatus to obtain a newlyassigned global address of the router.

Note that not only is it possible for the present invention to beembodied as a home terminal apparatus as described above, but also as acommunication system composed of such home terminal apparatus, therouter and the server apparatus, and as a communication method thatincludes, as its steps, the units of the home terminal apparatus.Furthermore, the present invention is also capable of being embodied asa program that causes a computer and the like to execute the abovecommunication method. It should be also understood that such program canbe distributed via recording media such as DVDs and CD-ROMs as well asvia transmission media such as a communication network.

As described above, in an environment where a router is connected to aninternet network at all times, the present invention allows a controlrequest to control an internet terminal such as a home appliance and thelike placed inside a house (on the local side) to be sent immediatelyfrom a server apparatus (on the global side) even when the pollingmethod is used. Accordingly, it is possible for a user in an outsidelocation to remotely operate the internet terminal inside the house inreal time, using a mobile terminal device.

Moreover, since the polling method is used for the router, the user isnot required to have any technical knowledge to set the router.Accordingly, by just getting connected to the router, the user whopurchased a home terminal apparatus such as “Kurashi (a Japanese wordfor “home life”) Station” can remotely operate home appliances from anoutside location using a mobile terminal device. This allows a dramaticimprovement in the convenience of such user.

What is more, even when a different global address is dynamicallyassigned to the router due to a temporary disconnection of an always-onconnection, since a global packet is periodically sent from the hometerminal apparatus according to the present invention to the serverapparatus, and such server apparatus then stores internet terminalinformation, it is possible for the server apparatus to obtain a newlyassigned global address of the router and to send a control request fromthe mobile terminal device of the user.

For further information about the technical background to thisapplication, Japanese Patent Application No.2002-261590 filed Sep. 6,2002, is incorporated herein by reference.

BRIEF DESCRIPTION OF DRAWINGS

These and other objects, advantages and features of the invention willbecome apparent from the following description thereof taken inconjunction With the accompanying drawings that illustrate a specificembodiment of the invention. In the Drawings:

FIG. 1 is a schematic diagram showing an entire configuration of acommunication system according to the first embodiment.

FIG. 2 is a functional block diagram showing a server apparatus, aninternet terminal, and a terminal apparatus and the like such as a homeappliance connected to the internet terminal.

FIG. 3 is a sequence diagram showing the internet terminal according tothe first embodiment sending a local packet.

FIG. 4 is a flowchart showing an operating procedure to be followed bythe internet terminal according to the first embodiment when sending alocal packet to the router periodically.

FIG. 5 is a diagram showing an example data structure of a local packetgenerated by the internet terminal according to the first embodiment.

FIG. 6 is a reference diagram showing a corresponding relationship tableheld by the router according to the first embodiment.

FIG. 7 is a flowchart showing a procedure followed by the serverapparatus according to the first embodiment when receiving the globalpacket from the router and sending back a response global packet to therouter.

FIG. 8 is a diagram showing an example data structure of the responseglobal packet generated by the server apparatus according to the firstembodiment.

FIG. 9 is a flowchart showing a procedure followed by the internetterminal according to the first embodiment when receiving the responseglobal packet.

FIG. 10 is a diagram showing a data structure of the local packet datawhich is sent by the internet terminal in order to obtain a holdingperiod during which the router holds a corresponding relationshipbetween a local address and a global address, when the internet terminalis activated.

FIG. 11 is a flowchart showing a procedure followed by the internetterminal according to the first embodiment when obtaining the holingperiod during which the router holds a conversion table, so as to detecta polling interval at the time of activation.

FIG. 12 is a functional block diagram showing a portal server, theserver apparatus and the internet terminal according to the secondembodiment.

FIG. 13 is a sequence diagram showing a flow of packet data to be sentfor controlling a terminal apparatus at home in accordance with theconventional polling method.

BEST MODE FOR CARRYING OUT THE INVENTION

An explanation is given of a communication system that incorporates aninternet terminal that is a home terminal apparatus according to thepresent invention, with reference to the figures.

Note that the internet terminal at home according to the presentinvention utilizes the characteristics of a router when UDP, which is aconnectionless protocol, is used as a communication protocol, andtherefore there is no need to add a new functionality to a routeritself. In a communication using a connectionless UDP protocol, a routerholds a corresponding relationship between a local address and a globaladdress only for a certain period of time at the time ofsending/receiving packet data, since it is unknown whether there will bea response from the party on the other end of the communication or not.In a communication using TCP, on the other hand, a conversion table (tobe also referred to as “corresponding relationship table”) is generatedwhen a connection is established between parties on the both ends of thecommunication, and a corresponding relationship between a local addressand a global address is deleted when such connection is broken. Thus,the home internet terminal apparatus according to the present inventionutilizes the characteristics of a router in the case of using UDP.

First Embodiment

FIG. 1 is a schematic diagram showing an entire configuration of acommunication system according to the first embodiment. Thecommunication system according to the first embodiment is characterizedby that control information from a mobile terminal device 130 in anoutside location is transmitted in real time to an internet terminal athome.

Such communication system is composed of a server apparatus 200dedicated to connecting a mobile terminal and a terminal apparatus on ahome network, an internet network 120, a mobile terminal device 130 usedby a user for sending and receiving remote control information to andfrom a terminal apparatus at home, a router 101 for routing packet datain between external and local networks, and an internet terminal 110,each of which are connected to one another via a cable or wirelesscommunication line. Note that the above networks are on an always-onstate using ADSL, optical fiber and the like.

In a local network 100, the router 101 routes incoming and outgoingpacket data to and from the house in an integrated manner, and therouter 101 and a PC 102 and others inside home are connected to eachother via LAN and the like. Also, the router 101 is connected to homeappliances such as an air conditioner 103, a rice cooker 104, and a DVDvideo recorder 105 via radio waves from the internet terminal 110 suchas “Kurashi Station”, using a communication protocol such as ECHONET.

The router 101 is capable of routing packet data transmitted between theexternal and home networks, converting an IP address described in an IPheader from a global address to a local address, and intentionallydestroying packet data that matches a predetermined condition.

Connected to the external network are the mobile terminal device 130such as a mobile phone by which the user can send control informationfrom an outside location and the server apparatus 200 dedicated toreceiving control information sent by the user and sending it to theinternet terminal 110 at home, so as to remotely control a homeappliance and the like.

Dotted lines shown in FIG. 1 indicate the flow of remote controlinformation. Control information sent by the user of the mobile terminaldevice 130 is sent to the dedicated server apparatus 200, which thenspecifies the global address of the router 101 on the home network,using a user ID, a telephone number, a password and the like. Next, theserver apparatus 200 sends, to the terminal apparatus 103 and the liketo be controlled, a global packet added with the global address, theterminal ID and others.

More importantly, since the local packet is periodically transmittedfrom the internet terminal 110 at home in the present invention, it ispossible for the router 101 to always hold a table that shows acorresponding relationship between the global address of the router 101and the local addresses of terminal apparatuses at home in the casewhere UDP is used as a communication protocol. This allows controlinformation to be sent from the global side to the local side in realtime in a communication which handles a UDP packet.

Note that the home appliance 103 and others on the local network 100 arewirelessly connected to the internet terminal 110, but the presentinvention is not limited to this, and therefore it is also possible thatcontrol information can be transmitted with the home appliance 103 andothers being connected to the local network directly.

FIG. 2 is an example functional block diagram showing the serverapparatus 200, the internet terminal 110, and the terminal apparatus 103and the like such as a home appliance connected to the internet terminal110.

The server apparatus 200 is capable of receiving control informationfrom the mobile terminal device 130, as well as constructing packet dataresulted by adding destination address information to the controlinformation and sending it to the target internet terminal 110 on thelocal network. Such server apparatus 200 is comprised of a communicationunit 201, an encryption processing unit 202, a response intervaladjustment unit 203, a control request processing unit 204, a terminalinformation storage unit 205, and a packet generation unit 206.

The communication unit 201 obtains, from the response intervaladjustment unit 203, a response interval at which packet data is sent,and sends, to the target internet terminal 110, a response global packetgenerated by the packet generation unit 206 via the internet network120, according to such response interval.

The encryption processing unit 202 decrypts the global packet sent bythe router 101 and encrypts a response global packet to be sent to therouter 101. DES, 3DES, AES or the like is used for this encryption anddecryption processing.

The response interval adjustment unit 203 reads out the polling intervalincluded in the global packet sent by the router 101 so as to determinean interval at which a response global packet should be sent, and passesthe determined response interval to the communication unit 201.

The terminal information storage unit 205 holds a table 205 a in which aset of information including the following information is stored asterminal information: the terminal ID; the sender's address; and thesender's port number included in the received global packet sent by theinternet terminal 110.

The packet generation unit 206 generates a response global packet inresponse to the global packet. More specifically, the packet generationunit 206 specifies the destination address and the destination portnumber with reference to the table 205 a stored by the terminalinformation storage unit 205 using the terminal ID of a terminalapparatus to be controlled sent by the mobile terminal device 130, andgenerates a response global packet by adding destination information andsender information to the header part and adding a control requestcommand including the control information to the data part.

The router 101 is a routing device for routing packet data on theexternal and local networks, and the internet terminal 110 and othersinside the house are connected to the external network via the router101 in an integrated manner.

The router 101 is assigned with a unique global address by the internetservice provider (ISP) 140, and a global packet sent by the router 101is delivered to a router of such internet service provider. The localpacket is then sent to the server apparatus 200 as a destination overthe network.

The mobile terminal device 130 is a device for sending and receivingcontrol information used by the user in an outside location to remotelyoperate the home appliance 103 and others at home. Examples of controlinformation are “start the rice cooker at six” and “record a TV programstarting at seven”. The mobile terminal device 130 is also capable ofreceiving information sent by the internet terminal 110 such as oneindicating that a recorder is programmed, and one sent from a thermosensor and a human sensor and the like.

The user of the mobile terminal device 130 specifies the terminalapparatus to be remotely operated and sends control request informationby getting connected to the server apparatus 200 dedicated to the remoteoperation of terminal apparatuses at home.

The internet terminal 110 is a terminal apparatus capable of managingthe home appliance 103 and others at home in an integrated manner, andis connected to the router 101 via LAN and the like. A communicationprotocol used on the home network is a secure protocol, an example ofwhich is ECHONET. A unique local address is assigned to the internetterminal 110 by the router 101.

The internet terminal 110 is comprised of a communication unit 111, anencryption processing unit 112, a packet generation unit 113, a pollinginformation storage unit 114, a polling interval adjustment unit 115,and a control unit 116.

The communication unit 111 sends a local packet generated by the packetgeneration unit 113 and receives a response local packet from serverapparatus 200. In the present invention, the communication unit 111 ischaracterized by that it sends a local packet to the router 101periodically according to a constant polling interval detected by thepolling interval adjustment unit 115.

The encryption processing unit 112 encrypts a local packet to be sentout and decrypts a received response local packet. Note that theencryption processing unit 112 also uses DES and the like forencryption, as in the case of the encryption processing unit 202 of theserver apparatus 200.

The packet generation unit 113 generates a local packet consisting ofthe header part added with address information and port numbers of boththe sender and the destination, and of the data part added with datasuch as a response interval at which a response is made by the serverapparatus 200.

The polling information storage unit 114 holds the terminal ID and thepassword for identifying the internet terminal 110.

The polling interval adjustment unit 115 detects a polling interval atwhich a local packet shall be periodically sent to the router 101,referring to a holding period during which the router 101 holds thecorresponding relationship table, and sends the detected pollinginterval to the communication unit 111.

The control unit 116 receives, from the router 101, the local packetincluding a control command specified by the user using the mobileterminal device 130 from an outside location, and performs controlprocessing by sending the control information to a target home appliancesuch as the rice cooker 104 and others according to the control commandincluded in the local packet.

In FIG. 2, home appliances connected to the internet terminal 110include the air conditioner 103, the rice cooker 104, and the DVD-videorecorder 105, which shall be connected to the internet terminal 110 inthe first embodiment. However, these home appliances may also beconnected directly to a wireless network, an electric wire, LAN andother networks.

The home appliance 103 and others has a communication unit 103 a and anappliance control unit 103 b. The communication unit 103 a is aprocessing unit for sending and receiving control information to andfrom the control unit 116 of the internet terminal 110. The appliancecontrol unit 103 b receives a control command from the internet terminal110 and controls the home appliance 103. An example control command is“start the rice cooker at ten.”

Next, an explanation is given of the procedure followed by the user whensending a control request from an outside location via the mobileterminal device 130. First, in the server apparatus 200, thecommunication unit 201 receives the control request, and the controlrequest processing unit 204 generates a frame 2 by incorporating acommand and data used for controlling the home appliance 103 into acontrol request command 809 in a data part 802, and passes it to theencryption processing unit 202. The encryption processing unit 202encrypts the frame 2, the packet generation unit 206 generates aresponse global packet, and the communication unit 201 sends thegenerated global packet to the router 101.

Next, in the internet terminal 110, the communication unit 111 receivesa response local packet, and the encryption processing unit 112 decryptsa data part 802 of the response local packet, and sends the resultant tothe control unit 116. The control unit 116 obtains the control requestcommand 809 included in the data part 802 of the response local packet,and sends a control command to the home appliance 103 via the homenetwork, when such control request command 809 is intended for the homeappliance 103.

The appliance control unit 103 b of the home appliance 103 receives thecontrol command, and controls the home appliance 103 according to thecontents of the control command.

FIG. 3 is a sequence diagram showing packet data being sent and receivedby the internet terminal 110 according to the first embodiment. Notethat in the first embodiment, packet data is referred to differently asa local packet 301, a global packet 302, a response global packet 303and a response local packet 304, depending on which sending process suchpacket data is in.

The local packet 301, which is sent from the internet terminal 110 tothe router 101, is made up of the header part which includes adestination address, a destination port number, a sender's address, anda sender's port number, and of the data part which includes data.Further, the sender's address includes the local IP address of theinternet terminal 110, and the destination address includes the globalIP address of the server apparatus 200.

The global packet 302 is sent from the router 101 to the serverapparatus 200. The sender's address and the sender's port numberincluded in the global packet 302 are converted by the router 101 into aglobal address unique to the router 101. The sender's address includesthe global IP address of the router 101 and the destination addressincludes the global IP address of the server apparatus 200.

The response global packet 303 is sent from the server apparatus 200 tothe router 101 according to a response interval. The global address andthe port number of the router 101 are described as the destinationaddress and the destination port number.

The response local packet 304 is generated by the router 101, which hasreceived the response global packet, by converting the destinationaddress from the global address and the port number of the router 101into the local address and the port number of the internet terminal 110with reference to the corresponding relationship table.

The internet terminal 110 is characterized by that it periodically sendsa local packet to the router 101 at every polling interval whendetecting an interval during which the router 101 holds the table thatlists a relationship between local and global addresses.

Under UDP, the router 101 stores a communication status between theglobal and local sides in the corresponding relationship table for acertain period of time. Usually, a corresponding relationship betweenthe local address and the global address in a local packet sent to therouter 101 disappears after a holding period. In the present invention,however, since the internet terminal 110 sends packet data at everypolling interval which is shorter than the holding period, acorresponding relationship between the local and global addresses isalways stored in the corresponding relationship table of the router 101.Note that the holding period during which the router 101 holds acorresponding relationship between the local address and the globaladdress is a certain period of time starting from when the router 101receives the local packet 301 or the response global packet 303 lasttime (e.g. 3 minutes).

Accordingly, it is possible for the router 101 to always convert, from aglobal address into a local address, the destination address and thedestination port number which are included in the control request packet305 that includes a control request from the server apparatus 200, aswell as to route the resultant to the internet terminal 110 to becontrolled.

Meanwhile, under the present circumstances, in a case where an always-onconnection of ADSL, optical fiber and the like is temporarily broken bythe user who has turned off the power of the router 101, for example,the internet service provider dynamically assigns a different globaladdress to the router 101 again. Accordingly, there arises a problemthat it is impossible to obtain such newly assigned global address ofthe router 101 even when the user tries to access the internet terminal110 from the mobile terminal device 130 for control information.

In the present invention, however, since the internet terminal 110periodically sends, to the server apparatus 200, packet data includingthe terminal ID, the sender's address, and the sender's port number andthe like, it is possible for the terminal information storage unit 205of the server apparatus 200 which receives such packet data, to storethe table 205 a listing the latest terminal ID, destination address anddestination port number and the like.

Therefore, it is possible for the server apparatus 200 to know thelatest global address of the router 101 by checking the terminal ID ofthe internet terminal 110 to be controlled. This enables controlinformation, which has been sent from the mobile terminal device of theuser, to be sent to the internet terminal 110 to be controlled withoutrequiring the user to carry out a special setting task, even when adifferent global address is assigned to the router 101 due to atemporary disconnection of an always-on connection.

FIG. 4 is a flowchart showing the operating procedure to be followed bythe internet terminal 110 according to the first embodiment when sendinga local packet to the router 101 periodically. FIG. 5 is a diagramshowing an example data structure of a local packet 500 generated by theinternet terminal 110 according to the first embodiment.

The polling information storage unit 114 holds terminal IDs andpasswords, and the packet generation unit 113 generates a frame (to bereferred to as “frame 1” hereinafter) incorporating a terminal ID and apassword obtained from the polling information storage unit 114.

FIG. 5 shows an example of the frame 1 included in the local packet 500.The frame 1, which is information included in the data part 502,includes the following data: a terminal ID 507 for identifying theinternet terminal 110; a random value 508 which is a random number; adigest value 509 outputted by inputting the terminal ID 507, a localport number 510, the password, and the random value 508 into a specifiedfunction; the local port number 510 which the internet terminal 110 canuse; and a polling interval 511 at which the internet terminal 110 sendsa local packet periodically. As the above specified function, MD5 whichis a hush function can be used, for example.

Next, the encryption processing unit 112 obtains the local packet 500from the packet generation unit 113 and encrypts the frame 1, and passesthe resultant to the communication unit 111 (S401). DES and the like isan example encryption method here. The communication unit 111 adds, tothe frame 1 which is the data part 502, a header part 501 that includesa destination address 503, a destination port number 504, a sender'saddress 505, and a sender's port number 506, and sends the local packet500 containing the header part 501 and the data part 502 to the router101.

In the local packet 500, the destination address 503 includes theaddress of the server apparatus 200, the destination port address 504includes a port number which the server apparatus 200 can use, thesender's address 505 includes the address of the internet terminal 110,and the sender's port number 506 includes a port number which isequivalent to the local port number 510, and the data part 502 includesthe encrypted frame 1.

The communication unit 111 obtains the polling interval from the pollinginterval adjustment unit 115, and judges whether the local packet 500 isactually sent at such polling interval or not (S402). When the result ofthe judgment shows that it is such polling interval (Y in S402), thecommunication unit 111 sends the local packet 500 to the router 101(S403), whereas it obtains a polling interval when the result of thejudgment shows that it is shorter than such polling interval (N inS402). Note that the internet terminal 110 performs processing forreceiving the response global packet after sending the local packet 500.A detailed explanation of this receiving process is given later.

FIG. 6 is a reference diagram showing a corresponding relationship table600 held by the router 101 according to the first embodiment. Thecorresponding relationship table 600 lists, in a paired manner, localaddresses and port numbers of the local network side and the globaladdress and port numbers of the external network side.

An explanation is given of conversion processing performed by the router101 when receiving the local packet 500 from the internet terminal 110and converting it into a global packet so as to send the resultant tothe server apparatus 200. When receiving the local packet 500, therouter 101 generates a global packet by converting the sender's address505 included in the local packet 500 into the global address of therouter 101 and by converting the sender's port number 506 included inthe local packet 500 into a port number which can be received by therouter 101 with the aim of making an efficient use of the globaladdress, and sends the generated global packet to the server apparatus200.

Moreover, the router 101 stores, in the corresponding relationship table600, a combination of the local address and the sender's port number ofthe internet terminal 110 and the global address and the port number ofthe router 101 as table information.

FIG. 7 is a flowchart showing the procedure followed by the serverapparatus 200 according to the first embodiment when receiving theglobal packet from the router 101 and sending back a response globalpacket to the router 101.

First, the communication unit 201 of the server apparatus 200 receivesthe global packet from the router 101, and passes it to the encryptionprocessing unit 202.

Next, the encryption processing unit 202 decrypts the data part 502included in the global packet, and sends the resultant to the terminalinformation storage unit 205 (S701). Then, the terminal informationstorage unit 205 performs authentication on the received global packet.In this authentication processing, the terminal information storage unit205: (i) obtains the terminal ID 507, the random value 508, the digestvalue 509, and the local port number 510 included in the data part 502,(ii) searches for a password corresponding to the terminal ID 507, (iii)determines a value by inputting, into a function equivalent to the oneused by the packet generation unit 113, the terminal ID 507, the localport number 510, the password, and the random value 508, and (iv)compares the determined value with the digest value 509 (S702).

When the authentication failed (N in S702), the terminal informationstorage unit 205 destroys the received global packet, whereas when theauthentication succeeded (Y in S702), the terminal information storageunit 205 obtains a set information including the terminal ID 507, thesender's address 505, and the sender's port address 506 included in theglobal packet, and generates and stores the table 205 a, with the aboveobtained set of information as terminal information (S703).

Furthermore, the terminal information storage unit 205 obtains a pollinginterval 511 included in the global packet, and passes it to theresponse interval adjustment unit 203. From such polling interval 511,the response interval adjustment unit 203 determines a response sendinterval which is an interval at which a response global packet, whichis a response to the global packet, should be sent back (S704).

Subsequently, the control request processing unit 204 detects whether ornot a control request to control the internet terminal 110 has beenreceived from the mobile terminal device 130 during the above determinedresponse send interval after the global packet was received (S705).

When judging that there is a control request (Y in S705), the controlrequest processing unit 204 stores the contents of the control requestin a control request command to be incorporated into the response globalpacket (S706). Meanwhile, when no control request occurs during theresponse send interval (N in S705), the control request processing unit204 stores, in the control request command, data indicating that thereis no control request (S707), generates a frame (to be referred to as“frame 2” hereinafter) to be incorporated into the response globalpacket, and passes it to the encryption processing unit 202. Note that,since it is not necessary for the server apparatus 200 to send, to theinternet terminal 110, information indicating that there is no controlrequest when the user of the mobile terminal device 130 makes no controlrequest to control a home appliance, S707 may be skipped and a responseglobal packet may be sent back only when a control request is sent fromthe mobile terminal device 130.

Subsequently, the control request processing unit 204 prepares the frame2 which includes the control request command, the terminal ID and theport number unique to the internet terminal 110 to be controlled (S708),and the packet generation unit 206 generates a response global packetconsisting of the header part that includes the destination and sender'saddresses and port numbers, and of the data part that includes the frame2. Note that FIG. 8 illustrates the data structure of such responseglobal packet. Also note that information such as “turn the operatingstate of the air conditioner 103 to ON” is described in the controlcommand.

The encryption processing unit 202 obtains the response global packetgenerated by the packet generation unit 206 and encrypts its data part,and the communication unit 201 sends the encrypted response globalpacket to the router 101 and terminates a series of processing (S709).

FIG. 8 is a diagram showing an example data structure of a responseglobal packet 800 generated by the server apparatus 200 according to thefirst embodiment.

The frame 2, which is prepared by the control request processing unit204, is contained in a data part 802, and includes: a terminal ID 807 ofthe internet terminal 110 to be controlled; a port number 808 whichincludes the local port number 510 included in the data part 502 of theglobal packet; and a control request command 809 that includes a controlcommand requested from the mobile terminal device 130 to the internetterminal 110.

The frame 2 is passed to the packet generation unit 206 after beingencrypted by the encryption processing unit 202, and then the responseglobal packet 800 including the header part 801 and the data part 802 isgenerated.

The packet generation unit 206 passes such generated response globalpacket 800 to the communication unit 201, which then extracts, from thetable 205 a in the terminal information storage unit 205, the terminalID of the internet terminal 110 to be controlled, i.e. the terminal IDwhich matches the terminal ID 807 included in the frame 2, and obtainsthe terminal ID 807, a destination address 803, and a destination portnumber 804. Then, the communication unit 201 adds such obtainedinformation to the header of the response global packet so as togenerate such response global packet.

In the response global packet 800, the destination address 803 includesa terminal address which is the global address of the router 101, thedestination port number 804 includes a terminal port number, a sender'saddress 805 includes the address of the server apparatus 200, and asender's port number 806 includes a port number which the serverapparatus 200 can use.

Next, an explanation is given of the procedure followed by the router101 when receiving the response global packet form the server apparatus200, converting it into a response local packet, and sending suchresponse local packet to the internet terminal 110.

First, on the receipt of the response global packet from the serverapparatus 200, the router 101 converts the destination address 803included in the response global packet into the address of the internetterminal 110, and converts the destination port number 804 included inthe response global packet into the port number of the internet terminal110 with reference to the conversion table, and generates a responselocal packet. Then, the router 101 sends such generated response localpacket to the internet terminal 110.

Note that the router 101 deletes a pair of the address and the portnumber of the internet terminal 110 and the address and the port numberof the router 101 stored in the conversion table, when there was nolocal packet or response global packet received during a certain periodof time. Meanwhile, when the above pair does not already exist in theconversion table of the router 101, the response global packet shall bedestroyed.

FIG. 9 is a flowchart showing the procedure followed by the internetterminal 110 according to the first embodiment when receiving theresponse local packet.

The communication unit 111 waits for receiving a response local packetduring the polling interval, after sending the local packet to therouter 101 (S901).

When receiving the response local packet during the polling interval (Yin S902), the communication unit 111 passes such response local packetto the encryption processing unit 112. The encryption processing unit112 decrypts the data part 802 of the response local packet, and passesthe resultant to the control unit 116. The control unit 116 thenperforms authentication by making a judgment on whether the terminal ID807 included in the data part 802 matches the terminal ID possessed bythe internet terminal 110 and on whether the port number 808 matches thelocal port number 510 used when the frame 1 was generated (S903). Whenthe authentication failed (N in S903), the communication unit 111returns to the wait state for receiving the response local packet.

When the authentication succeeded (Y in S903), the control unit 116obtains and reads out the control request command 809 included in thedata part 802. And, when the contents of the control request command 809indicates “no control request” (N in S904), the control unit 116terminates the receiving process.

On the other hand, when the contents of the control request command 809indicates “there is a control request” and it is intended forcontrolling the internet terminal 110 or the home appliance 103 and thelike on connection (Y in S904), the control unit 116 controls theinternet terminal 110 or the connected home appliance 103 and the likeaccording to the contents of the control request command 809 (S905). Anexample of this control request is “start the air conditioner at seven.”

Meanwhile, when the communication unit 111 did not receive the responselocal packet during the polling interval (N in S902), the pollinginterval adjustment unit 115 performs processing for shortening suchpolling interval (S906). For example, when the polling interval is setto 20 minutes as the default, such polling interval is made shorterminute by minute (e.g. 19 minutes, 18 minutes . . . ) until the responselocal packet is received. Assuming that the communication unit 111receives the response local packet when the polling interval has beenshortened to 10 minutes, the local packet is sent to the router 101every 10 minutes from then on. Note that the polling interval may beshortened to 10 minutes or shorter, e.g. 9.5 minutes, in such a case

Also note that, in the internet terminal 110 according to the firstembodiment, the polling interval adjustment unit 115 may check the tableholding period of the router 101 which is connected at the time ofactivation, instead of shortening the polling interval as describedabove.

FIG. 10 is a diagram showing the data structure of the local packet datawhich is sent by the internet terminal 110 in order to obtain theholding period during which the router 101 holds a correspondingrelationship between a local address and the global address, when theinternet terminal 110 is activated.

For example, the packet generation unit 113 of the internet terminal 110generates four local packets, each having a different destination portnumber (e.g. 5000˜5003) as its destination port number included in aheader part, a different sender's port number, and a different pollinginterval (e.g. 1 minutes 4 minutes with a 1-minute time interval betweeneach interval) as its response interval included in a data part. Then,the communication unit 111 sends such four local packets all at once tothe server apparatus 200. Note that these time intervals and portnumbers are just examples and therefore that the present invention isnot limited to them.

Since the corresponding relationship between global and local addressesis usually cached for a certain period of time in the correspondingrelationship table 600 possessed by the router 101, the correspondingrelationship is stored for such certain period of time, but it is to bedeleted after the certain period of time. Thus, response packet databeyond the holding period shall not be sent back.

Accordingly, the communication unit 111 of the internet terminal 110performs the receiving process, but in a case where it has receivedresponse global packets corresponding to local packets 1001, 1002, and1003, but it has not received a response global packet corresponding toa local packet 1004, the polling interval adjustment unit 115 judgesthat a corresponding relationship is cached for “3 minutes” in therouter 101, and sets a polling interval of local packets to 3 minutes.

FIG. 11 is a flowchart showing the procedure followed by the internetterminal 110 according to the first embodiment when obtaining the holingperiod during which the router 101 holds the conversion table, so as todetect a polling interval at the time of activation.

First, the packet generation unit 113 of the internet terminal 110generates a plurality of local packets whose polling interval isdifferent from each other's, the encryption processing unit 112 encryptssuch generated local packets, and the communication unit 111 sends themto the router 101 (S1101).

Next, the communication unit 111 of the internet terminal 110 waits forresponse local packets (S1102), and judges whether response localpackets have been received or not (S1103). When the response localpackets have been received (Y in S1103), the polling interval adjustmentunit 115 obtains, as a corresponding relationship holding period of therouter 101, the last and longest polling interval which has beenreceived (51104).

Meanwhile, when the response local packets have not been received (N inS1103), the internet terminal 110 terminates this processing.

As described above, the internet terminal 110 according to the firstembodiment is comprised of the polling interval adjustment unit 115 thatdetects the holding period during which the router 101 holds theconversion table and judges a polling interval at which local packetsare sent out, and of the communication unit 111 that sends a localpacket periodically and repeatedly to the router 101 according to suchpolling interval.

Accordingly, in an environment where the router 101 is connected to aninternet network at all times, since the router 101 can always possess acorresponding relationship table that lists a relationship betweenglobal and local addresses and port numbers even in the polling method,the server apparatus 200 generates a global packet which includes theglobal address of the router 101 corresponding to its terminal ID andsends it to the router 101, and consequently the router 101 can convertthe global address into a local address on the local network withreference to the conversion table which it stores, even when the user inan outside location sends a control request via the mobile terminaldevice 130. Accordingly, it is possible to remotely control the homeappliance 103 and the like at home in a manner which satisfies theuser's requirement by sending, in real time, control information sent bythe user in an outside location using the mobile terminal device 130 tothe target internet terminal 110 at home.

What is more, according to the present invention, since there is no needfor making a setting for the router by using the polling for the router,it is possible for a user to remotely operate a home appliance from anoutside location by connecting the internet terminal 110 according tothe present invention to the existing router 101. Thus, the presentinvention is capable of making a dramatic improvement in the convenienceof its user.

Regarding the server apparatus 200, since it needs to send a responseglobal packet to a terminal apparatus at home to be controlled only whena user makes a control request from outside home using the mobileterminal device 130, it is not necessary for the internet terminal 110to inquire the server apparatus 200 about the presence/absence of acontrol request, as is required in a conventional method.

Moreover, since the polling interval adjustment unit 115 of the internetterminal 110 detects, at the time of activation, the holding periodduring which the router 101 holds the conversion table, it is possibleto avoid a situation in which a user cannot make a control request froman outside location because of the reason that the correspondingrelationship stored by the router 101 disappeared, as seen in aconventional case.

Furthermore, since even an existing router can hold a relationshipbetween destination and sender's addresses in a UDP packet for a certainperiod of time, there is no need for adding a new functionality to arouter, meaning that the present invention can be embodied utilizing anexisting router.

Also, it is possible for the server apparatus 200 to know the latestglobal address of the router 101 by checking the terminal ID of theinternet terminal 110 to be controlled. Accordingly, even in a casewhere a different global address is assigned to the router 101 due to atemporary disconnection of an always-on connection, the user can sendcontrol information from the mobile terminal device 130 to the internetterminal 110 to be controlled without needing to carry out a specialsetting task.

Note that it is also conceivable that the result of controlling theinternet terminal 110 and the home appliance 103 according to the firstembodiment is sent to the user's mobile terminal device 130. Examples ofsuch control result are “timer setting of the air conditioner from sevencompleted” and “hot-water supply completes at ten”. The procedure ofsending a control result is explained below.

The control unit 116 of the internet terminal 110 obtains the controlrequest command 809 included in the data part 802 of the response localpacket, and controls the internet terminal 110 accordingly. When aterminal to be controlled is the air conditioner 103, for example, thecontents of the control request command 809 is sent to the appliancecontrol unit 103 b of the air conditioner 103.

The appliance control unit 103 b of the home appliance 103 controls thehome appliance 103 according to the control request, and sends dataindicating the result of such control to the control unit 116 of theinternet terminal 110.

The control unit 116 of the internet terminal 110 passes, to theencryption processing unit 112, a frame (to be referred to as “frame 3”hereinafter) to be sent to the server apparatus 200 by incorporating,into the frame 3, the data sent by the home appliance 103 indicating itscontrol result or the control result of the internet terminal 110.

The encryption processing unit 112 encrypts the frame 3, and passes theresultant to the communication unit 111. The communication unit 111generates a local packet to be sent to the server apparatus 200 in amanner equivalent to the one explained above, and sends it to the router101. Thus, such local packet includes data indicating the controlresult.

The router 101 converts the local address described in the receivedlocal packet into a global address, stores them in the correspondingrelationship table 600, and sends the global packet to the serverapparatus 200 via the internet network 120.

In the server apparatus 200, the communication unit 201 receives theglobal packet sent by the router 101 and passes it to the encryptionprocessing unit 202, which then decrypts the frame 3 in the receivedglobal packet and passes the resultant to the control request processingunit 204. Then, the control request processing unit 204 reads in thedata indicating the control result of the home appliance 103 or the dataindicating the control result of the internet terminal 110, so as toobtain the control result, and the communication unit 201 sends suchcontrol result to the mobile terminal device 130 and a series ofprocessing is terminated.

Note that the polling interval adjustment unit 115 shortens a pollinginterval at which a local packet is sent by the minute in theexplanation of the present invention, but a polling interval does notnecessarily have to be shortened by the minute, and therefore that itmay vary depending on the implementation of the internet terminal 110.

Second Embodiment

Referring to FIG. 12, an explanation is given of a second embodiment ofthe communication system according to the present invention.

FIG. 12 is a functional block diagram showing a portal server 1201, theserver apparatus 200 and the internet terminal 110 according to thesecond embodiment. In the communication system according to the secondembodiment, the portal server 1201 is newly added to the configurationof the communication system according to the above-described firstembodiment illustrated in FIG. 2. The second embodiment is characterizedby that a control request from the user's mobile terminal device 130 issent to this portal server 1201, and the home appliance 103 and the likeconnected to the internet terminal 110 is controlled by the portalserver 1201 via the server apparatus 200. Note that, in FIG. 12, thesame constituent elements as those illustrated in FIG. 2 are assignedwith the same numbers, and detailed explanations thereof are omitted.

This portal server 1201 is a server which handles, for example, anapplication dedicated to remotely operating a home appliance at homefrom an outside location, and is comprised of a communication unit 1204for sending and receiving packet data to and from the outside, anencryption processing unit 1203 for encrypting and decrypting packetdata, and a request processing unit 1202. The request processing unit1202 reads in a control request sent from a mobile terminal device.

Next, an explanation is given of the processing procedure of thecommunication system according to the second embodiment. First, the usersends, to the portal server 1201, a control request for controlling theinternet terminal 110 such as a home appliance having a terminal IDunique to the home network, via the internet network 120 by the use ofthe mobile terminal device 130. An example of the control request is“program the DVD-video recorder to record the news program at ten”, asdescribed above.

Then, the communication unit 1204 of the portal server 1201 receives thecontrol request from the mobile terminal device 130, and sends suchcontrol request to the server apparatus 200 via the internet network120.

Subsequently, the control request processing unit 204 of the serverapparatus 200 generates the control request command 809 to beincorporated into the frame 2 according to the received control request,and further incorporates the address of the portal server 1201 into suchcontrol request command 809.

The subsequent processing is equivalent to that in the first embodiment:the control request processing unit 204 generates the frame 2 includingthe control request command 809 and the address of the portal server1201, and passes it to the packet generation unit 206, and the packetgeneration unit 206 generates a response global packet that includes theheader part, and passes it to the encryption processing unit 202. Theencryption processing unit 202 encrypts the frame 2, which is then sentto the router 101 by the communication unit 201.

Then, the communication unit 111 of the internet terminal 110 receivesthe response local packet from the router 101, and the encryptionprocessing unit 112 decrypts the data part 802 of such response localpacket and passes the resultant to the control unit 116. The controlunit 116 obtains the control request command 809 included in the datapart 802 of the response local packet, and controls the internetterminal 110 or the home appliance 103 according to the contents of thecontrol request command 809. Subsequently, the appliance control unit103 b of the home appliance 103 sends data indicating its control resultto the internet terminal 110.

Next, the control unit 116 of the internet terminal 110 passes, to thepacket generation unit 113, the data indicating the control result sentby the home appliance 103 or the data indicating the control result ofthe internet terminal 110, and then the packet generation unit 113generates a response local packet consisting of the data part and theheader part, and sends it to the encryption processing unit 112.

The encryption processing unit 112 encrypts the data part of suchresponse local packet, and the communication unit 111 sends, to therouter 101, a local packet to be sent to the portal server 1201.

The router 101 converts such received local packet into a global packetto be sent to the portal server 1201, and sends the global packet to theportal server 1201 via the internet network 120.

The communication unit 1204 of the portal server 1201 receives theglobal packet including the control result information routed by therouter 101 and passes it to the encryption processing unit 1203, whichthen decrypts the data part in such global packet and passes it to therequest processing unit 1202. Subsequently, the request processing unit1202 obtains the data indicating the control result of either the homeappliance 103 or the internet terminal 110 included in the data part andpasses it to the communication unit 1204, and the communication unit1204 sends the received control result of either the home appliance 103or the internet terminal 110 to the mobile terminal device 130.

As explained above, since the communication system according to thesecond embodiment incorporates the portal server 1201, which uses adedicated application for the internet terminal 110 for remotelyoperating home appliances, it is possible to employ the portal server1201 as a dedicated server of the internet terminal 110.

Moreover, even in a case where an internet terminal for providing adifferent kind of services is to be provided, it is possible to use thesame server apparatus 200 by appropriately using either the portalserver 1201 or the server apparatus 200 that periodically receives apacket, depending on need.

Note that a mobile phone is used as the mobile terminal device 130 inexplaining the preferred embodiments, but the present invention is notlimited to this, and therefore that an equivalent functionality can beachieved by using another terminal device/apparatus including a PC and aPDA which can be connected to the internet network 120.

INDUSTRIAL APPLICABILITY

The home terminal apparatus according to the present invention is suitedto be used as a terminal apparatus for sending and receiving packet datato and from a router connected to an external network, by beingconnected to such router via a home network, and more particularly, thehome terminal apparatus according to the present invention is applicableto a terminal apparatus for remotely operating home appliances in anintegrated manner as well as applicable to home appliances and the likesuch as an air conditioner.

1-28. (canceled)
 29. A terminal apparatus for sending and receiving datato and from a router that is connected to an external network to which aserver apparatus is connected, said terminal apparatus being connectedto the router via a home network and the router holding a correspondingrelationship between a global address assigned to the router and a localaddress of said terminal apparatus for a predetermined period of time,said terminal apparatus comprising: a communication unit operable tosend and receive data to and from the server apparatus via the router;and an adjustment unit operable to detect the predetermined period oftime during which the corresponding relationship is held in the router,and to judge that a period shorter than the predetermined period is asending interval at which the data is sent; wherein said communicationunit is operable to send the data repeatedly to the router according tothe sending interval.
 30. The terminal apparatus according to claim 29,wherein: a mobile terminal device sends a control request to saidterminal apparatus; and said communication unit is operable to receivethe control request via the router.
 31. The terminal apparatus accordingto claim 30, further comprising: a control unit operable to control saidterminal apparatus according to the control request.
 32. The terminalapparatus according to claim 30, wherein: a plurality of apparatuses areconnected to said terminal apparatus via the home network; theapparatuses each includes an apparatus control unit operable to controlthe apparatus itself; said communication unit is operable to send thecontrol request to each of the apparatuses; and the apparatus controlunit of each of the apparatuses is operable to control the respectiveterminal apparatus according to the received control request.
 33. Theterminal apparatus according to claim 29, further comprising: ageneration unit operable to generate data to be sent to the serverapparatus; wherein said generation unit is operable to generate the datathat includes at least the following information in a header part: thelocal address of said terminal apparatus as a sender's address; a localport number of said terminal apparatus as a sender's port number; anaddress of the server apparatus as a destination address; and a portnumber of the server apparatus as a destination port number, and thatincludes at least the following information in a data part: a uniqueterminal ID of said terminal apparatus.
 34. The terminal apparatusaccording to claim 33, wherein: a mobile terminal device sends a controlrequest to said terminal apparatus; and said communication unit isoperable to receive the control request via the router.
 35. The terminalapparatus according to claim 34, further comprising: a control unitoperable to control said terminal apparatus according to the controlrequest.
 36. The terminal apparatus according to claim 34, wherein: aplurality of apparatuses are connected to said terminal apparatus viathe home network; the apparatuses each includes an apparatus controlunit operable to control the apparatus itself; said communication unitis operable to send the control request to each of the apparatuses; andthe apparatus control unit of each of the apparatuses is operable tocontrol the respective terminal apparatus according to the receivedcontrol request.
 37. The terminal apparatus according to claim 29,further comprising: a generation unit operable to generate data to besent to the server apparatus; wherein said generation unit is operableto generate the data that includes at least the following information ina header part: the local address of said terminal apparatus as asender's address; a local port number of said terminal apparatus as asender's port number; an address of the server apparatus as adestination address; and a port number of the server apparatus as adestination port number, and that includes at least the followinginformation in a data part: a response interval at which response datais sent as a response from the server apparatus.
 38. The terminalapparatus according to claim 37, wherein said adjustment unit isoperable to judge that the sending interval should be shortened whensaid communication unit has not received the response data from therouter within the sending interval.
 39. The terminal apparatus accordingto claim 37, wherein: said generation unit is operable to generate aplurality of data with different response intervals; said communicationunit is operable to send the plurality of data generated by saidgeneration unit; and said adjustment unit is operable to detect thepredetermined period of time during which the corresponding relationshipis held in the router from the response interval at which the responsedata is sent.
 40. The terminal apparatus according to claim 39, whereinsaid adjustment unit is operable to detect a longest response intervalas the predetermined period of time in the router out of a plurality ofresponse data sent by the server apparatus in response to the pluralityof data sent by said terminal apparatus.
 41. The terminal apparatusaccording to claim 37, wherein the server apparatus includes: a secondcommunication unit operable to send and receive the data; a responseinterval adjustment unit operable to obtain the response interval atwhich the response data is sent to said terminal apparatus, the responseinterval being included in the data, and to determine a response periodduring which the response data should be sent; and a second generationunit operable to generate the response data to be sent to said terminalapparatus; wherein said second communication unit is operable to send,to the router, the response data generated by said second generationunit according to the response period.
 42. A communication method foruse with a terminal apparatus for sending and receiving data to and froma router that is connected to an external network to which a serverapparatus is connected, the terminal apparatus being connected to therouter via a network and the router holding a corresponding relationshipbetween a global address assigned to the router and a local address ofthe terminal apparatus for a predetermined period of time, saidcommunication method comprising: sending and receiving data to and fromthe server apparatus via the router; and detecting the predeterminedperiod of time during which the corresponding relationship is held inthe router, and judging that a period shorter than the predeterminedperiod is a sending interval at which the data is sent; wherein in saidsending and receiving of the data, the data is sent repeatedly to therouter according to the sending interval.
 43. The communication methodaccording to claim 42, further comprising: generating data to be sent tothe server apparatus; wherein in said generating, the generated dataincludes at least the following information in a header part: the localaddress of the terminal apparatus as a sender's address; a local portnumber of the terminal apparatus as a sender's port number; an addressof the server apparatus as a destination address; and a port number ofthe server apparatus as a destination port number, and includes at leastthe following information in a data part: a unique terminal ID of theterminal apparatus.
 44. The communication method according to claim 42,further comprising: generating data to be sent to the server apparatus;wherein in said generating, the generated data includes at least thefollowing information in a header part: the local address of theterminal apparatus as a sender's address; a local port number of theterminal apparatus as a sender's port number; an address of the serverapparatus as a destination address; and a port number of the serverapparatus as a destination port number, and includes at least thefollowing information in a data part: a response interval at whichresponse data is sent as a response from the server apparatus.
 45. Acomputer executable program for use with a terminal apparatus forsending and receiving data to and from a router that is connected to anexternal network to which a server apparatus is connected, the terminalapparatus being connected to the router via a network, and the routerholding a corresponding relationship between a global address assignedto the router and a local address of the terminal apparatus for apredetermined period of time, said computer executable programcomprising: computer executable program code operable to cause a sendingand receiving of data to and from the server apparatus via the router;and computer executable program code operable to cause a detection ofthe predetermined period of time during which the correspondingrelationship is held in the router, and judging that a period shorterthan the predetermined period is a sending interval at which the data issent; wherein in the sending and receiving of the data, the data is sentrepeatedly to the router according to the sending interval.
 46. Theprogram according to claim 45, further comprising: computer executableprogram code operable to cause a generation of data to be sent to theserver apparatus; wherein in the generation of data, the generated dataincludes at least the following information in a header part: the localaddress of the terminal apparatus as a sender's address; a local portnumber of the terminal apparatus as a sender's port number; an addressof the server apparatus as a destination address; and a port number ofthe server apparatus as a destination port number, and includes at leastthe following information in a data part: a unique terminal ID of theterminal apparatus.
 47. The program according to claim 45, furthercomprising: computer executable program code operable to cause ageneration of data to be sent to the server apparatus; wherein in thegeneration of data, the generated data includes at least the followinginformation in a header part: the local address of the terminalapparatus as a sender's address; a local port number of the terminalapparatus as a sender's port number; an address of the server apparatusas a destination address; and a port number of the server apparatus as adestination port number, and includes at least the following informationin a data part: a response interval at which response data is sent as aresponse from the server apparatus.
 48. A communication systemcomprising: a server apparatus connected to an external network; aterminal apparatus connected to a network; and a router which connectsthe external network and the network; wherein said router holds acorresponding relationship between a global address assigned to saidrouter and a local address of said terminal apparatus for apredetermined period of time; and said terminal apparatus comprises: acommunication unit operable to send and receive data to and from saidserver apparatus via said router; and an adjustment unit operable todetect the predetermined period of time during which the correspondingrelationship is held in said router, and to judge that a period shorterthan the predetermined period is a sending interval at which the data issent; wherein said communication unit is operable to send the datarepeatedly to said router according to the sending interval.
 49. Thecommunication system according to claim 48, wherein: said terminalapparatus further includes a generation unit operable to generate datato be sent to said server apparatus; said generation unit is operable togenerate the data to include at least the following information in aheader part: the local address of said terminal apparatus as a sender'saddress; a local port number of said terminal apparatus as a sender'sport number; an address of said server apparatus as a destinationaddress; and a port number of said server apparatus as a destinationport number, and to include at least the following information in a datapart: a unique terminal ID of said terminal apparatus; and said serverapparatus includes: a second communication unit operable to receive thedata that includes the terminal ID of said terminal apparatus; aterminal information storage unit operable to store the followinginformation as a set of terminal information: the terminal ID of saidterminal apparatus; a global address of said router which is a sender'saddress; and a global port number of said router which is a sender'sport number; and a packet generation unit operable to obtain, from saidterminal information storage unit, the global address and the globalport number which correspond to the terminal ID when a control requestto control said terminal apparatus with the terminal ID occurs.
 50. Thecommunication system according to claim 48, wherein: said terminalapparatus further includes a generation unit operable to generate datato be sent to said server apparatus; said generation unit is operable togenerate the data to include at least the following information in aheader part: the local address of said terminal apparatus as a sender'saddress; a local port number of said terminal apparatus as a sender'sport number; an address of said server apparatus as a destinationaddress; and a port number of said server apparatus as a destinationport number, and to include at least the following information in a datapart: a response interval at which response data is sent as a responsefrom said server apparatus.
 51. The terminal apparatus according toclaim 29, wherein said terminal apparatus is a home terminal apparatus.52. The terminal apparatus according to claim 29, wherein said terminalapparatus is an internet terminal.
 53. The terminal apparatus accordingto claim 32, wherein said plurality of apparatuses are home appliances.